home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Graphics Plus
/
Graphics Plus.iso
/
msdos
/
raytrace
/
pov
/
gen
/
hype
/
hype100.doc
< prev
next >
Wrap
Text File
|
1992-08-11
|
7KB
|
170 lines
┌──────────────────────────────────────────────────────────────────────────────┐
│ Hype v1.00 │
│ Copyright (C) 1992 │
│ By Truman Brown │
└──────────────────────────────────────────────────────────────────────────────┘
HYPE:
HYPE is a data file generator for the Persistence of Vision Raytracer
(POV-Ray). For information about raytracing, POV-Ray, computer
generated art, or other utilities supporting the art of raytracing
please visit the Computer Art forum on CompuServe (tm) [GO COMART] or
any one of the following fine graphics oriented bulletin boards:
The Graphics Alternative 510-524-2780
You Can Call Me Ray 708-358-5611
Leo's Electronics BBS 310-212-7179
RESTRICTIONS AND DISCLAIMERS:
HYPE is freely distributable. The author retains the copyright to the
program, but authorizes free distribution by BBS'es, networks,
magnetic media, etc. The distributor may charge no more than five
dollars ($5) U.S. for this software.
HYPE may not be used as part of any commercial package without the
explicit written consent of the author - Truman Brown. You may
contact me on CompuServe, 71477,221.
The author makes no guarantees or warranties with this program and
claims no responsibility for any damage or loss of time caused by this
program.
DESCRIPTION:
Hype is a command line utility which enables you to create unique
declarations of hyperboloids of one sheet and intersections of same.
What is a hyperboloid of one sheet? It is a quadric shape that
resembles an hourglass and is defined by the equality:
x^2/a^2 - y^2/b^2 + z^2/c^2 = 1.
In SHAPES.INC it is declared as this matrix:
#declare Hyperboloid_Y = quadric {
<1.0 -1.0 1.0> /* */
<0.0 0.0 0.0> /* \ / */
<0.0 0.0 0.0> /* Like this: ) ( */
-1.0 /* / \ */
}
A trace of a hyperboloid of one sheet in the xz-plane is an ellipse,
as are the traces in planes parallel to the xz-plane. Traces in the
xy- and zy-planes are hyperbolas, as are the traces in the planes
parallel to these.
While the SHAPES.INC Hyperboloid_Y can be scaled and otherwise
transformed, it is still somewhat difficult to manipulate the shape
with any measure of accuracy. Using Hype, you will be able to create
unique declarations of hyperboloids of one sheet, and you will also be
able to specify clipping planes which will result in exact
measurements of the top and bottom of the "hourglass." When used with
CircleMaster, Hype will also enable you to create the appearance of
pseudo-bloblike mergings between spheres.
SYNTAX:
HYPE /R# /R# /Ofilename [options]
/R# = radius of 1st end of clipped hyperboloid {absolute value > a}
/R# = radius of 2nd end of clipped hyperboloid {absolute value > a}
/Ofilename = name of output file to write data to
Options:
/Nobjectname = assign object name
/C = use CLIPPED_BY instead of intersections
/PB = write output in PoV beta 0.5 syntax
/A# = default = 1
/B# = default = B=A=1
/NS = don't write stats to output file
/NB = don't write bounding data
/L# = length of cone <must be greater than 0>
/T# = desired angle of tangent at first end of cone
NOTES:
"/"s are optional.
Whitespace is permitted between parameters.
/L and /T will override the /B parameter
/L and /T are mutually exclusive. Use one or the other but not both.
"A" is the value of the radius of the neck of the hourglass.
The neck of the hourglass is positioned at x=0, y=0, z=0.
"B" is the focus of the rotational hyperbola.
"T" is the value of the tangent angle at the clipping point.
"R" is the radius at either the top or the bottom clip.
The first "R" is the "bottom" radius.
Negative values of "R" place the clip below the neck.
Positive values of "R" place the clip above the neck.
2nd R
------------- T
\ /
\ /
) A ( B
/ \
/ \
-------------
1st R
By definition, "A" must be smaller than both "R"s. The default value
of "A" is 1.0.
By definition, "B" must be greater than zero. The default value of
"B" is 1.0.
When generated, the resulting clipped hyperboloid is translated such
that the bottom clip is sitting at the origin (Y=0).
EXAMPLES:
Create a clipped hyperboloid with a top and bottom radius of 10, and a
neck radius of 4 ("B" defaults to 1.0):
HYPE /R-10 /R10 /A4 /OTEST.INC
Create a clipped hyperboloid with a top radius of 10 and a bottom
radius of 5, both of which are above the neck ("A" & "B" default to
1.0):
HYPE R 5 R 10 O TEST.INC
Create a clipped hyperboloid with a top radius of 5 and a bottom
radius of 39, both of which are below the neck. Make the tangent
angle at the top clip 35 degrees (everything else defaults):
HYPE R-39 R-5 T35 /OTEST.INC
Trick: a hyperboloid cone --
Create a clipped hyperboloid with a top radius of 10 and a bottom
radius of 5, both above the neck. Make the length of the clipped
hyperboloid 20:
HYPE /R 5 /R 10 OTEST.INC L 20
Trick: pseudo-bloblike connections --
Create a pseudo-bloblike connection using CircleMaster and Hype:
1. Create a clipped sphere of radius 10 clipped at a resulting
radius of 6:
CM X10 Y10 R6 O SPHERE.INC
2. Read the stats generated by CM to determine the tangent at the
intersection plane.
3. Feed the tangent angle into HYPE, matching the radius of the
resulting plane:
HYPE R-6 R6 A3 O HYPE.INC T36.86989764584402
4. Edit the include files so that the clipped hyperboloid lays on
top of the clipped sphere.
Most HYPE's parameters are fairly self-explanatory. As with any
utility however, it's generally best to just play around with it and
see what it's capabilities are. I encourage you to do so with HYPE.
CREDITS:
I wish to thank:
My wife Madrid for her patience and love.
Obsessed programmers / trace-aholics can be miserable to live with.
The Pasadena Public Library, City of Los Angeles Library, and the
Pasadena City College Library for maintaining such excellent research
materials.